Модуль Синхронизации¶
Инструкция по дополнительной настройке модуля синхронизации¶
Для предотвращения конфликтов при миграции и синхронизации данных из Microsoft Active Directory (MS AD) используется синхронная модель поведения. В качестве ведущего сервера обработки информации выбран главный сервер в кластере серверов ALD Pro.
Модуль синхронизации работает по следующим принципам:
Источник данных LDAP: используется только MS AD DS (Microsoft Active Directory Domain Services). Все изменения объектов выполняются исключительно в MS AD;
Направление: односторонняя синхронизация (MS AD → ALD Pro);
Контроль изменений: - объекты, управляемые модулем синхронизации, не редактируются напрямую в ALD Pro; - все изменения (создание, модификация, удаление) производятся только в MS AD.
Исходные настройки¶
Предполагается, что на момент настройки модуля синхронизации у нас имеются:
Настроенный контроллер домена MS AD;
Настроенный контроллер домена ALD Pro;
В обоих доменах MS AD и ALD Pro настроены корзины с одинаковыми интервалами ротации(очистки);
Для сетей, в которых находятся контроллеры домена Microsoft AD и ALD Pro, настроено перенаправление DNS-зон;
В домене MS AD поднят центр сертификации и выдан сертификат для доступа по LDAPs (см. Выгрузка сертификатов для контроллера домена MS AD);
Для учетной записи MS AD, под которой идет подключение модуля синхронизации к контроллерам домена MS AD, необходимо через powershell выдать права на контейнер “Deleted Objects” и организационное подразделение (OU), задействованное для процесса синхронизации.
Примечание
В примере ниже при помощи команд powershell выдаются права на контейнер Deleted Objects и организационное подразделение (OU) Подразделение А для пользователя aldagent в домене winad.lan
// для выдачи прав на контейнер запускаем ``powershell`` от имени администратора
dsacls "CN=Deleted Objects,DC=winad,DC=lan" /takeownership
dsacls "CN=Deleted Objects,DC=winad,DC=lan" /g winad\aldagent:LCRP
dsacls "OU=Подразделение А,DC=winad,DC=lan" /g "winad\aldagent:CA;Reset Password;user" /I:S
Выгрузка сертификатов для контроллера домена MS AD¶
Для выгрузки сертификатов необходимо, чтобы в домене был настроен Центр Сертификации.
Примечание
Для корректного отображения окна конфигуратора используйте разрешение экрана не ниже 1280×1024, иначе элементы интерфейса могут выходить за пределы экрана.
Запустить Центр Сертификации → Шаблоны Сертификатов → Управление на сервере с ролью Центр Сертификации:
Создать копию шаблона Проверка подлинности Kerberos, выбрав пункт Скопировать шаблон контекстного меню:
Настроить шаблон сертификата на вкладке Общие:
имя сертификата LDAPowerSSL;
период действия сертификата.
Отметить галочкой пункт меню Опубликовать сертификат в MS AD.
Опубликовать новый тип сертификата. Для этого в в контекстном меню раздела Шаблоны сертификатов выбрать Создать → Выдаваемый шаблон сертификата.
В списке доступных шаблонов выбрать созданный ранее:
На контроллере домена, который будет задействован в процессе синхронизации данных со стороны MS AD, открыть оснастку Управление сертификатами компьютера. В дереве сертификатов перейти в папку Личное и в контекстном меню выбрать Все задачи → Запросить новый сертификат:
В списке доступных сертификатов выбрать созданный ранее, выпустить сертификат (кнопка Выпустить сертификат) и экспортировать (контекстное меню Все задачи → Экспорт).
Откроется мастер экспорта сертификатов:
Выбрать кодировку base64 для файла сертификата:
Задать имя файла:
После нажатия кнопки Готово будет выгружен файл сертификата <имя_сертификата.cer>.
Необходимо изменить формат файла сертификата на *.pem, переименовав файл в <имя_сертификата.pem>. (например sert.pem - как публичный ключ для подключения по LDAPS к контроллеру MS AD)
Выгрузка сертификатов для контроллера домена ALD Pro¶
Для выгрузки сертификата необходимо зайти на портал управления ALD Pro, нажать на кнопку просмотра информации о сайте и выбрать Незащищенное соединение → Подробнее:
Выбрать Просмотреть сертификат:
Откроется файл сертификата:
Открыть ссылку PEM (сертификат):
Сертификат сайта сохранен.
Настройка синхронизации паролей MS AD → ALD¶
Установка passwdhk на контроллер домена (если ранее не устанавливался)¶
Для настройки потребуется файл PasswdhkSetup.msi, который можно скачать в личном кабинете пользователя Astra Linux https://lk-new.astralinux.ru.
Синхронизация пароля пользователя будет успешна только для тех учетных записей MS AD, для которых пароль задавался после создания групповой политики passwdhk. Пароли, изменяемые до установки passwdhk, не смогут быть синхронизированы в целевой LDAP (ALD Pro). Для синхронизации паролей у существующих пользователей необходимо сменить/обновить пароль в LDAP-источнике (MS AD DS).
Перед началом установки необходимо установить компонент Visual C++ Redistributable 2022.
Выполнить запуск установочного файла passwdhk_install/util/VC_redist.x64.exe
Установку необходимо выполнить на каждом контроллере домена, где планируется установка утилиты passwdhk.
Запустить файл
PasswdhkSetup.msiот имени администратора.На экране параметров установки указать следующие значения:
Уровень логирования - указать один из четырех уровней логирования;
Номер ключа регистрации - ввести значение, полученное на портале управления ALD Pro;
Публичный ключ регистрации - вставить файл открытого ключа, скачанный при развертывании модуля синхронизации в ALD Pro Модуль синхронизации -> Настройки -> Синхронизация паролей -> Кнопка “Получить ключ” (подробнее в разделе Синхронизация паролей ALD Pro → MS AD).
Примечание
Если ключ подгрузился автоматически, это означает, что на контроллере домена имеются артефакты. В этом случае необходимо выполнить шаги из раздела Настройка синхронизации паролей MS AD → ALD для удаления артефактов старой версии. Это позволит избежать некорректной работы утилиты и ошибок установки или нарушения работы компонентов.
После заполнения всех параметров нажать на кнопку Установить, затем — Готово.
Дождаться завершения перезагрузки контроллера домена.
Проверить, что в реестре создались необходимые записи.
Обновление passwdhk, установленного через групповую политику (GPO), на версию MSI¶
Важно
Утилита может сработать некорректно, если в системе присутствуют артефакты предыдущих установок. В редких случаях это может привести к ошибкам установки или нарушению работы компонентов.
Если на контроллере домена ранее был установлен passwdhk через групповую политику (GPO), необходимо выполнить удаление старой версии перед установкой новой версии через MSI:
Удалить объект групповой политики
passwdhkв редакторе групповых политик (gpmc.msc).
Удалить папку
passwdhkиз сетевого каталога\\<Имя-контроллера-домена>\SYSVOL\<Имя-домена>\scripts.
Очистить параметры в реестре:
Удалить ключ
Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\passwdhk.
В параметре Notification Packages по пути
Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsaудалите значениеpasswdhk.
Перезагрузить контроллер домена для применения изменений.
После перезагрузки вручную удалить из каталога
C:\Windows\System32файлыpasswdhk.dllиlibcrypto-3-x64.dll.
Выполнить установку новой версии
passwdhkчерезPasswdhkSetup.msi, следуя инструкции из пункта инструкции Исходные настройки для модуля синхронизации.
Автоматизированная установка passwdhk через MST-файл¶
Для массовой установки утилиты passwdhk на контроллеры домена можно использовать файл трансформации (MST), содержащий заранее заданные параметры конфигурации, который можно развернуть с помощью групповой политики (GPO).
Примечание
Для редактирования установочного файла .msi и создания .mst трансформации можно использовать любую утилиту, поддерживающую редактирование таблиц MSI-файлов (например, Orca или аналогичные средства). В данной инструкции приведены примеры с использованием Orca.
Создание MST-файла¶
Открыть
PasswdhkSetup.msiв утилите редактирования MSI-файлов и создать новый трансформационный файл (MST).В меню File → Open выбрать установочный файл
PasswdhkSetup.msi.В меню Transform выбрать New Transform.
Перейти на вкладку Property и добавить следующие свойства:
REGKEY— вставьте публичный ключ регистрации, полученный на портале управления ALD Pro. Каждую строку ключа необходимо экранировать символом n (перевод строки).
KVNOPUB— номер ключа, также полученный на портале.
После добавления параметров выбрать Transform → Generate Transform и сохранить полученный файл под именем, например,
pass.mst.
Подготовка файлов для установки¶
Перейти в сетевую папку:
\\<Имя-контроллера-домена>\SYSVOL\<Имя-домена>\scriptsСкопировать в нее следующие файлы:
PasswdhkSetup.msi;
pass.mst.
Настройка групповой политики¶
Открыть редактор групповой политики (gpmc.msc).
В узле Domain Controllers создать новую групповую политику или использовать существующую.
Перейти в раздел: Конфигурация пользователя → Политики → Конфигурация программ → Установка программ.
Создать новый пакет:
Указать путь к
PasswdhkSetup.msiиз сетевой папки;в способе развертывания выбрать Особый.
Добавить MST-файл
pass.mstпо тому же сетевому пути.
Применение политики¶
Применить политику командой:
gpupdate /forceПерезагрузить контроллер домена.
Синхронизация паролей ALD Pro → MS AD¶
Получение открытого ключа¶
В интерфейсе ALD Pro открыть Модуль синхронизации → Конфигурации → Синхронизация паролей
По нажатию кнопки Получить ключ скачивается файл открытого ключа и актуализируется порядковый номер ключа.
Синхронизация паролей¶
Скачанный файл открытого ключа необходимо сохранить в любую директорию, например, /tmp/. Следующим шагом файл открытого ключа необходимо скопировать в расположение /opt/rbta/aldpro/syncer/:
sudo cp /tmp/public.gpg /opt/rbta/aldpro/syncer/public.gpg
Перезагружаем контроллер домена:
sudo aldproctl restart
Примечание
При изменении пароля синхронизированного пользователя через интерфейс FreeIpa, синхронизация пароля от ALD Pro к MS AD не произойдет. Для изменения пароля с последующей успешной синхронизацией необходимо использовать интерфейс ПК «ALD Pro»;
Процесс изменения пароля пользователя через личный кабинет с последующей синхронизацией от ALD Pro к MS AD проходит успешно только при использовании личного кабинета контроллера домена, на котором был развернут модуль синхронизации;
При сбросе пароля пользователя через интерфейс ПК «ALD Pro» временный пароль не синхронизируется. После сброса пароля пользователя необходимо залогиниться в домене, изменить пароль с временного на постоянный. При данных условиях произойдет синхронизация пароля от ALD Pro к MS AD.
Пароли пользователей MS AD, установленные до настройки модуля синхронизации, синхронизированы не будут.
Синхронизация паролей пользователей после настройки модуля синхронизации и сопоставлений подразделений происходит по логике:
синхронизирован пользователь в домен ALD Pro → изменен пароль пользователя в домене MS AD → синхронизирован пароль пользователя в домен ALD Pro;
создан пользователь в домене MS AD → синхронизирован пользователь в домен ALD Pro.
Внимание
При настройке синхронизации паролей между ALD Pro и MS AD рекомендуется вручную задать согласованные значения параметров политики паролей в обеих системах, так как их автоматическая синхронизация не предусмотрена.
Включение TLS на Windows Server 2008R2¶
Важно
Настройка выполняется, если на контроллере домена отключено TLS. Данная инструкция применима к контроллерам домена с ОС WS 2008R2. Если версия ОС отличается, необходимо обратиться к официальной документации Microsoft для выбора подходящей инструкции.
Алгоритм включения TLS¶
Для включения TLS необходимо обновить реестр на сервере контроллера домена.
Необходимо открыть реестр: выполнить “regedit” в окне запуска.
Откроется окно редактора реестра:
Необходимо перейти к расположению и добавить разделы TLS 1.1 и TLS.
В разделе Protocol:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocol
Создаются еще два раздела Client и Server под обоими ключами TLS.
Теперь необходимо создать значения DWORD в разделе Server и Client со следующими значениями:
DisabledByDefault [Значение = 0]
Enabled [Значение = 1]
Необходимо отключить старые версии TLS и SSL. Для этого:
Открыть реестр на сервере контроллера домена: выполнить “regedit” в окне запуска (аналогично шагу 1).
Перейти к расположению:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols
Изменить значения DWORD в разделе Server и Client в разделе ключи TLS 1.0, SSL 3.0 и более старых версий SSL.
DisabledByDefault [Значение = 0]
Enabled [Значение = 0]
После выполнения всех вышеперечисленных настроек необходимо перезагрузить сервер контроллера домена. Данная настройка выполняется на всех контроллерах домена.
Особенности настройки при миграции большого количества объектов¶
По умолчанию 389ds выполняет обновления ссылочной целостности сразу после операции удаления или переименования. В зависимости от количества операций это может повлиять на производительность. Чтобы уменьшить влияние на производительность, есть возможность увеличить время между обновлениями, для этого необходимо задать интервал обновления в секундах. По умолчанию интервал обновления равен 0.
Чтобы показать имя 389ds-сервера:
sudo dsctl -l
Скопируйте в буфер имя вашего сервера (рядом с ним вы увидите slapd-GLOBAL-CATALOG). Чтобы отобразить текущий интервал обновления, запустите (заменив <имя LDAP-сервера> на имя нужного вам LDAP-сервера):
sudo dsconf <имя LDAP-сервера> plugin referential-integrity show | grep referint-update-delay
Задать новое значение интервала обновления:
sudo dsconf <имя LDAP-сервера> plugin referential-integrity set --update-delay <новое_значение>
Перезапустите инстанс:
sudo dsctl <имя LDAP-сервера> restart
Логирование событий и отладка (работы модуля синхронизации) с MS AD¶
Логирование событий и отладка¶
Данный раздел посвящён диагностике и устранению ошибок, возникающих при синхронизации между ALD Pro и Microsoft Active Directory (MS AD). Приведены типовые сценарии возникновения проблем, способы их диагностики, а также рекомендации по их устранению.
События, возникающие в процессе синхронизации, фиксируются в соответствующих журналах событий. Выполнение диагностики целесообразно начинать с анализа этих журналов.
Общие категории ошибок:
Ошибки при установке и первоначальной настройке;
Ошибки, возникающие при отсутствии связности между ALD Pro и MS AD;
Ошибки при сопоставлении структур (например, дочерних подразделений) между ALD Pro и MS AD.
Ошибки могут проявляться при взаимодействии компонентов, выполняющих синхронизацию данных:
компонент
passwdhk;служба
syncer-watcher;служба
syncer-loadrunner;cлужба
pwdSync.
Под данными службами подразумевается следующее: - Служба syncer-watcher выполняет синхронизацию данных из LDAP контроллера MS AD в базу PostgreSQL на контроллера ALD Pro; - Служба syncer-loadrunner выполняет синхронизацию из базы PostgreSQL в LDAP на контроллере ALD Pro; - Служба pwdSync выполняет синхронизацию паролей пользователей в MS AD и ALD Pro.
Отладка работы модуля синхронизации¶
Диагностика интеграции с MS AD¶
Диагностическая информация модуля интеграции с MS AD фиксируется в журналах событий LSA (Login Security Authority). В этих журналах отражаются:
Успешная смена пароля
Неуспешная смена пароля
Внимание
Типичная ошибка: После вставки публичного ключа LDAP может возникнуть ошибка вида ``id2 not found``. Решение: Проверить директорию, в которую скопирован ключ. Убедиться, что путь указан верно, и повторно задать ключ в web-интерфейсе ALD Pro, если он не найден.
Примечание
При сопоставлении подразделений необходимо убедиться, что логин указывается в виде
user@domain, иначе возможны ошибки авторизации;В случае потери ключа авторизации (например, ``id2 not found``), необходимо проверить директорию хранения ключей и выполнить переустановку через интерфейс управления.
Отладка работы модуля syncer¶
Для отладки работы модуля синхронизации необходимо включить режим отладки (debug):
root@syncer-dc1:~# nano /opt/rbta/aldpro/syncer/.env
DEBUG=True
Логи:
syncer_loadrunner.log — отвечает за синхронизацию из PostgreSQL в ALD Pro:
/var/log/aldpro/syncer/syncer_loadrunner.log
syncer_watcher.log — отвечает за чтение данных из MS AD и запись в PostgreSQL:
/var/log/aldpro/syncer/syncer_watcher.log
Отладка работы модуля pwdSync¶
Модуль синхронизации паролей между MS AD и ALD Pro поддерживает включение режима отладки через файл:
root@syncer-dc1:~# nano /opt/rbta/aldpro/syncer/pwd_sync/standalone/__init__.py
DEBUG = True
Журналы:
Журнал отладки:
/var/log/aldpro/syncer/pwd_sync/standalone_debug.log
Журнал ошибок:
/var/log/aldpro/syncer/pwd_sync/standalone_error.log
Важно
Текущая реализация не требует ручного перезапуска служб — запуск синхронизации осуществляется по расписанию systemd (таймеры, относящиеся к службам syncer-watcher, syncer-loadrunner, pwdSync).
Сценарии отладки¶
Ниже представлены типовые сценарии поиска и устранения ошибок.
Проверка состояния служб¶
Следует проверить, что таймеры служб активны, а службы запущены:
systemctl status syncer-watcher.timer
systemctl status syncer-loadrunner.timer
systemctl status syncer-pwdsync.timer
systemctl status syncer-watcher.service
systemctl status syncer-loadrunner.service
systemctl status syncer-pwdsync.service
При наличии ошибок рекомендуется проверить журнал службы:
journalctl -u syncer-watcher.service
journalctl -u syncer-loadrunner.service
journalctl -u syncer-pwdsync.service
Ошибка дублирования имени при создании объекта¶
Если имя пользователя или группы совпадает в ALD Pro и MS AD, процесс syncer-loadrunner завершится с ошибкой:
CRITICAL ipa_load_runner Объект objectGUID=2f880038-bba4-4f05-b115-8b3a8da217b5 не может быть создан в ALD Pro из-за дублирования имени.
ERROR ipa_load_runner Объект не может быть создан в ALD Pro из-за дублирования имени.
- Решение:
Переименовать объект в одном из источников;
Удалить объект из ALD Pro.
Важно
Перед началом синхронизации важно убедиться, что в настроенной точке синхронизации (подразделении) в MS AD и ALD Pro отсутствуют записи пользователей, групп, полностью идентичных друг другу (с одинаковыми именами). Если такие записи существуют, то в процессе синхронизации это приведет к ошибке и невозможности синхронизации.
Повторное появление удалённого объекта¶
Если пользователь/группа была удалена из ALD Pro и корзины, но осталась в MS AD, она может быть вновь синхронизирована.
Примеры логов:
ERROR ipa_load_runner Объект objectGUID=... не найден в ALD Pro
INFO ipa_load_runner Сохранение объекта objectGUID=..., sync_status=3
CRITICAL ipa_load_runner Ошибка при обработке объекта. Требуется устранить ошибку вручную
Решение:
Удалить объект в MS AD или исключить его из области синхронизации;
Дождаться появления в корзине ALD Pro и удалить повторно.
Отладка проблемы: объект не создаётся в ALD Pro¶
Пошаговая диагностика:
Определить значение атрибута
objectGUIDобъекта в LDAP MS AD;Найти строки с ключевыми словами
Errorи нужнымobjectGUIDвsyncer_watcher.log.
grep '2f880038-bba4-4f05-b115-8b3a8da217b5' /var/log/aldpro/syncer/syncer_watcher.log
Найти строки с ключевыми словами Error и нужным objectGUID в syncer_loadrunner.log.
grep '2f880038-bba4-4f05-b115-8b3a8da217b5' /var/log/aldpro/syncer/syncer_loadrunner.log
Примечание
Если при создании точки синхронизации MS AD → ALD Pro задано одно сопоставление, второе сопоставление в той же точке будет невозможно. Такое поведение также фиксируется в логах и требует пересмотра структуры.
Неизвестный класс объекта в логах syncer-watcher¶
В процессе поиска объектов для синхронизации в журнале `syncer-watcher.log` могут встречаться ошибки следующего вида:
2025-06-25 07:12:03 syncer INFO runners Число объектов для обработки в watcher: 3
2025-06-25 07:12:03 syncer INFO runners Обработка объектов
2025-06-25 07:12:03 syncer ERROR runners Неизвестный класс объекта
2025-06-25 07:12:03 syncer ERROR runners Неизвестный класс объекта
2025-06-25 07:12:03 syncer ERROR runners Неизвестный класс объекта
Примечание
Данная ошибка не является критичной и не влияет на дальнейшую работу службы `syncer-watcher`.
В процессе выполнения запроса к каталогу LDAP MS AD в результат поиска могут попасть служебные объекты, которые не подлежат синхронизации. Например:
# search reference
ref: ldap://ForestDnsZones.corp.test/DC=ForestDnsZones,DC=corp,DC=test
# search reference
ref: ldap://DomainDnsZones.corp.test/DC=DomainDnsZones,DC=corp,DC=test
# search reference
ref: ldap://corp.test/CN=Configuration,DC=corp,DC=test
Подобные объекты игнорируются при синхронизации и не влияют на корректность основного процесса.
Ошибка удаления объекта, отсутствующего в ALD Pro¶
Если объект был удалён из точки синхронизации (подразделения в MS AD) или перемещён в другое подразделение, но при этом его уже нет в ALD Pro, возможно появление ошибки при попытке удаления:
2025-06-25 11:26:41 syncer DEBUG ipa_load_runner Обработка объекта objectGUID=6cc876e1-40ae-44b3-b4a8-a9044f7dd69a, nsuniqueID=None, тип объекта=user, sync_status=3
2025-06-25 11:26:41 syncer DEBUG ipa_load_runner Удаление объекта nsuniqueID=None
2025-06-25 11:26:41 syncer DEBUG provider Запрос для объекта в целевой LDAP используя метод user_del
2025-06-25 11:26:41 syncer ERROR ipa_load_runner Ошибка во время удаления {'code': 4001, 'message': 'user1: user not found', 'data': {'reason': 'user1: user not found'}, 'name': 'NotFound'}
2025-06-25 11:26:41 syncer INFO ipa_load_runner Сохранение объекта objectGUID=6cc876e1-40ae-44b3-b4a8-a9044f7dd69a, nsuniqueID=None с sync_status=0
2025-06-25 11:26:41 syncer INFO ipa_load_runner Удаление записи 1 в точки синхронизации
Ошибка `user not found` означает, что в ALD Pro уже нет объекта, который предполагается удалить. Это может произойти, если:
объект был удалён вручную или автоматически на предыдущих этапах;
объект изначально не был синхронизирован, но был добавлен в список на удаление из-за изменений в MS AD.
Решение: данная ошибка не требует вмешательства. При следующем запуске службы `syncer-loadrunner.service` состояние синхронизации будет скорректировано, и сообщение об ошибке исчезнет.
Ошибка отсутствия TLS-сертификата для подключения к MS AD¶
Если в процессе подключения к целевому контроллеру MS AD отсутствует необходимый файл TLS-сертификата, в журнале syncer_loadrunner.log появится следующая ошибка:
2025-06-27 03:19:06 syncer DEBUG strategy Подключение к хосту dc1.ald.company.lan успешно. Протокол API
2025-06-27 03:19:06 syncer DEBUG provider Подключение к целевой LDAP
2025-06-27 03:19:06 syncer DEBUG strategy Попытка подключения к dc1.ald.company.lan
2025-06-27 03:19:06 syncer ERROR ipa_load_runner Нет файла сертификата для подключения id=1
Traceback (most recent call last):
...
AttributeError: Нет файла сертификата для подключения id=1
2025-06-27 03:19:06 syncer DEBUG provider Отключение соединения от целевой LDAP
2025-06-27 03:19:06 syncer INFO ipa_load_runner loadrunner завершился
Причина: отсутствует файл публичного ключа для LDAPS-подключения к контроллеру MS AD.
Решение: Скопировать сертификат sert.pem в требуемое расположение:
cp sert.pem /run/syncer/provider/key1.pem
Где sert.pem — это публичный ключ для LDAPS-подключения.
Либо проверить директорию, в которую скопирован ключ. Убедиться, что путь указан верно, и повторно задать ключ в web-интерфейсе ALD Pro, если он не найден.
Подробнее о подготовке и настройке сертификатов (см. Выгрузка сертификатов для контроллера домена MS AD).
Отсутствие связи с контроллером MS AD¶
Если со стороны ALD Pro отсутствует сетевое соединение с контроллером MS AD, в журнале syncer_watcher.log зафиксируется ошибка следующего вида:
2025-06-30 14:43:52 syncer DEBUG provider Подключение к LDAP источник
2025-06-30 14:43:52 syncer DEBUG strategy Попытка подключения к windc1.corp.test
2025-06-30 14:43:55 syncer ERROR strategy {'desc': "Can't contact LDAP server", 'errno': 107, 'info': 'Transport endpoint is not connected'}
2025-06-30 14:43:58 syncer ERROR strategy {'desc': "Can't contact LDAP server", 'errno': 107, 'info': 'Transport endpoint is not connected'}
syncer ERROR run Не удалось подключиться к хосту=windc1.corp.test. Протокол LDAP
Решение: Проверить доступность порта 389 на контроллере MS AD
nc -vz windc1.corp.test 389
Если порт недоступен — устранить ограничения, связанные с настройками сетевых экранов, маршрутизацией и другими компонентами инфраструктуры.
Неверный пароль при доступе из web-интерфейса АLD Pro¶
В случае, когда web-интерфейсе ALD Pro неверно указано пароль пользователя, под которым происходит подключение к LDAP MS AD, в файле syncer_watcher.log будет ошибка:
2025-07-02 12:17:40 syncer DEBUG provider Подключение к LDAP источник
2025-07-02 12:17:40 syncer DEBUG strategy Попытка подключения к windc1.corp.test
2025-07-02 12:17:40 syncer ERROR strategy {'desc': 'Invalid credentials', 'info': '80090308: LdapErr: DSID-0C09042A, comment: AcceptSecurityContext error, data 52e, v3839'}
2025-07-02 12:17:40 syncer ERROR strategy {'desc': 'Invalid credentials', 'info': '80090308: LdapErr: DSID-0C09042A, comment: AcceptSecurityContext error, data 52e, v3839'}
syncer ERROR run Не удалось подключиться к хосту=windc1.corp.test. Протокол LDAP
Решение: Проверить правильность ввода пароля.
Проблемы с синхронизацией пароля новых пользователей MS AD¶
При первой попытке синхронизации пароля пользователя из Microsoft Active Directory в ALD Pro может возникать при условиях:
данный пользователь только что создан в MS AD;
пароль пользователя ни разу не изменялся в MSAD;
синхронизация завершилась с ошибкой.
При попытке синхронизации данных пользователя из MS AD в ALD Pro журнал работы модуля синхронизации syncer (файл syncer_standalone_error.log) содержит записи следующего вида:
2025-08-24 13:06:49 pwd-sync ERROR utils Возникло исключение во время выполнения <function ADldap.delete_attr ...>
2025-08-24 13:06:55 pwd-sync ERROR processors Ошибка NO_SUCH_ATTRIBUTE, текст ошибки {'desc': 'No such attribute', 'info': '00002076: AtrErr: DSID-030F194C, ... (userParameters)'}
Traceback (most recent call last):
...
ldap.NO_SUCH_ATTRIBUTE: {'desc': 'No such attribute', 'info': '00002076: AtrErr: DSID-030F194C, ... Att 9008a (userParameters)'}
Причина:
У новых пользователей MS AD, для которых пароль ещё ни разу не был изменён, отсутствует ряд служебных атрибутов (например, userParameters и whenChanged).
При первой синхронизации из ALD PRO модуль syncer пытается работать с этими атрибутами, и каталог возвращает ошибку NO_SUCH_ATTRIBUTE.
В результате синхронизация пароля не выполняется.
Решение:
Для всех новых пользователей, созданных в MS AD, необходимо однократно сменить пароль (достаточно через стандартные средства Windows или административные утилиты).
После этого в каталоге будут установлены значения атрибутов (в том числе whenChanged), и последующая синхронизация паролей из ALD PRO в MS AD будет выполняться без ошибок.
Инструкция по выдаче ограниченных прав на управление паролями пользователей в домене MS AD¶
Для работы модуля синхронизации учетная запись домена MS AD, под которой устанавливаются отношения синхронизации, должна обладать правами на управление паролями пользователей, которые, по умолчанию, имеются у администраторов домена. В случае невозможности или нежелательности работы модуля синхронизации под учетной записью администратора домена допускается выдача ограниченных прав на учетную запись. Для этого:
На контроллере домена MS AD необходимо запустить оснастку “Active Directory - пользователи и компьютеры”.
Выбрать OU корень домена и открыть “Делегирование управления”.
В открывшемся окне “Мастер делегирования управления”, после нажатия кнопки [Далее] необходимо указать учетную запись пользователя, которой выдаются права.
Выбрать права для делегирования: Создание, удаление и управление учетными записями пользователей.
Нажать кнопку [Готово].
Права выданы.
Примечание
В зависимости от версии домена MS AD набор делегируемых задач может отличаться.
Инструкция по обновлению ALD Pro до версии 2.4.0 и более поздних с ранее установленным модулем синхронизации¶
Общая информация¶
При обновлении контроллера домена ALD Pro до версии 2.4.0 и более поздних, с ранее установленным модулем синхронизации, процесс миграции базы данных может занять продолжительное время. Если база данных содержит 30000 пользователей и более, то рекомендуется сначала обновить ALD Pro, затем выбрав отдельный интервал профилактики обновить модуль синхронизации, согласно этой инструкции.
Проверка и подготовка состояния синхронизации¶
Перед началом обновления необходимо убедиться в отсутствии ошибок в работе модуля синхронизации. Если ошибки синхронизации присутствуют, их необходимо устранить до начала обновления, чтобы избежать проблем миграции и работы системы после обновления.
Проверить состояние служб синхронизации:
systemctl status syncer-loadrunner.timer
systemctl status syncer-watcher.timer
Проверить логи на наличие ошибок:
tail -n 100 /var/log/aldpro/syncer/syncer_loadrunner.log
tail -n 100 /var/log/aldpro/syncer/syncer_watcher.log
Также проверить журналы ошибок синхронизации паролей:
tail -n 100 /var/log/aldpro/syncer/pwd_sync/standalone_error.log
Если в логах обнаружены ошибки (например, CRITICAL или ERROR связанные с синхронизацией пользователей и групп), необходимо их устранить до начала обновления. В случае, если устранить ошибки самостоятельно невозможно — рекомендуется обратиться в техническую поддержку.
Предварительный этап¶
Делается резервная копия базы данных модуля синхронизации в отдельную директорию (выбрать в соответствии с инфраструктурой):
mkdir /srv/pg_backup && chown postgres:postgres /srv/pg_backup/
sudo -i -u postgres
$ pg_dump -d syncer -F d -f /srv/pg_backup/syncer_$(date +%Y%m%d-%H%M)
$ du -sh /srv/pg_backup/syncer_20240913-0938/
520K /srv/pg_backup/syncer_20240913-0938/
Проверить, что модуль синхронизации установлен, и запретить обновлять его пакеты (на примере ранее установленной версии ALD Pro 2.3.0):
apt list --installed | grep -E 'aldpro(.*)sync'
aldpro-mp-ui-syncer/1.7_x86-64,now 2.3.0-22 amd64 [установлен, автоматически]
aldpro-syncer/1.7_x86-64,now 2.3.0-31 amd64 [установлен]
apt-mark hold aldpro-syncer aldpro-mp-ui-syncer
Обновление ALD Pro до новой версии¶
Обновить source.list и пакеты на контроллере домена с установленным модулем обновления.
sudo apt dist-upgrade -y -o Dpkg::Options::=--force-confnew
sudo aldpro-server-install --update --domain <domain> --host <hostname> --ip <ip> --setup_syncer [--setup_gc]
Внимание
Параметр --setup_gc необходим только в случае ранее установленного модуля глобального каталога на данном контроллере домена.
Обновление модуля синхронизации¶
После основного этапа обновления ALD Pro и проверки работоспособности можно переходить к обновлению модуля синхронизации.
Снять удержание с пакетов:
sudo apt-mark unhold aldpro-syncer aldpro-mp-ui-syncer
Обновить пакеты и завершить обновление ALD Pro:
sudo apt dist-upgrade -y -o Dpkg::Options::=--force-confnew
sudo aldpro-server-install --update --domain <domain> --host <hostname> --ip <ip> --setup_syncer [--setup_gc]
После завершения обновления, необходимо перезагрузить контроллер домена.
sudo reboot
Обновление завершено.